<html>
  <head>
    <title>数据传输对象</title>
  </head>
  <body>
    <script>
          /*
              常规做法：

                      1、在应用程序合约包中定义DTO。


                      2、在可能和必要的情况下从预构建的基本DTO类继承
                          
                        （如EntityDto<TKey>、CreationAuditedEntityDto<TKey>、AuditedEntityDto<TKey>、FullAuditedEntityDto<TKey>等）。

                              从可扩展DTO类继承聚合根（如ExtensibleAuditedEntityDto<TKey>），
                                
                              因为聚合根是可扩展对象，额外的属性以这种方式映射到DTO。


                      3、使用public getter和setter定义DTO成员。

                      4、使用数据注释对作为服务输入的DTO的属性进行验证。

                      5、除了在必要时实现IValidatableObject之外，不要将任何逻辑添加到DTO中。

                      6、请将所有DTO标记为[可序列化]，因为它们已经是可序列化的，开发人员可能希望对它们进行二进制序列化。
          
          */
    </script>
  </body>
</html>